Method for Assisted Order Handling Via the Internet

ABSTRACT

The invention relates to a method for enabling order handling via the Internet, wherein the method is performed in a computer system comprising at least a client, an ordering server and an agent server connected to the Internet, each of the client, the ordering server and the agent server comprising at least one processor and a memory storing one or more programs for execution by the at least one processor. The invention discloses a method comprising: capturing at least a part of the contents of a website retrieved by a web browser on the client from the ordering server; transferring the captured contents to the agent server; deriving object information from the captured contents on the agent server to identify an object to be ordered; controlling the ordering server by the agent server to order the object.

FIELD OF THE INVENTION

The invention relates to a method for enabling order handling via the Internet, wherein the method is performed in a computer system comprising at least a client, an ordering server and an agent server connected to the Internet, each of the client, the ordering server and the agent server comprising at least one processor and a memory storing one or more programs for execution by the at least one processor.

BACKGROUND OF THE INVENTION

A substantial part of the activities in modern society are online: Social live, entertainment, ecommerce, education etc. However, online tasks are to a large extent repetitive and take valuable time of people. To simplify the life of human beings, intelligent software programs (‘bots’) perform typical human activities online to provide an improved quality of life and convenience in daily activities.

One major source of inconvenience online is in ecommerce. Finding and buying products online is very complicated despite its existence since more than 20 years. Online users need to include and verify email addresses, delivery addresses, payment methods, billing addresses and personal information repetitively until a product can finally be purchased. There is no global standard. Information have to be included or at least verified by users any time a product is bought online. A solution supporting and automating online orders will ultimately safe users valuable time, will be less error-prone and will improve the overall user experience.

SUMMARY OF THE INVENTION

Against this background it will readily be appreciated that there is a need for an improved method for purchasing products via the Internet.

The invention discloses a method comprising:

-   -   capturing at least a part of the contents of a website retrieved         by a web browser on the client from the ordering server;     -   transferring the captured contents to the agent server;     -   deriving object information from the captured contents on the         agent server to identify an object to be ordered;     -   controlling the ordering server by the agent server to order the         object.

The method of the invention imitates and automates the typical activity of humans online when, for example, purchasing an article or a service online. The technology follows a pecking order to understand the user's online selection and automates the execution of the order via the web interface of the respective online shop (as implemented on the individual ordering server). The method of the invention may also be used, for example, to automate a posting on Facebook or other online platforms related to social live, entertainment, ecommerce, education etc., wherever online tasks have to be performed interactively by a user.

According to the invention, typical tasks humans perform interactively online will be supported and automated with self-learning, intelligent software programs (tots). Users can select which tasks the intelligent bot should perform. Based on web scraping technologies, artificial intelligence and machine learning principles, the bots will subsequently learn human activities and will automate their execution.

In a preferred embodiment, the ordering server is a vendor server running an online shop, wherein the object is a product to be purchased from the online shop. In this case, the method of the invention may be performed as follows: (i) A user of the client visits any website of a vendor, selects a product to be purchased including possible product configurations and presses a button in the web browser (browser plugin) or a button in a mobile application, (ii) a pop-up including product configurations and order confirmation will be displaced to the user on the client for confirmation. Within a waiting period the order can be cancelled, (iii) after the waiting period, the order will be performed by intelligent bots on the agent server that automatically purchase the product for the user. The product will be delivered to the user's selected delivery address and paid by the user's selected payment method. Any information with respect to the order can be conveniently viewed in a central ecommerce account displaying all purchases including price, configurations, date of delivery, correspondence with the online shop (e.g. newsletters) and return policy.

In a preferred embodiment of the invention, the object information is communicated to the client where the product information is presented to a user of the client, and wherein the purchase of the product is performed after receiving an ordering approval from the client. This enables the user to confirm the order before the order is executed by the agent server.

In a further preferred embodiment of the invention, the contents and the transferring to the agent server is initiated by activating a plugin of the web browser on the client. This enables to provide the service realized by the method of the invention easily and conveniently to users of conventional web browsers. The respective plugin may be downloaded and installed by the user via the Internet.

Alternatively, the client may be constituted by an application program (‘app’) running on a mobile device. In this case, the app includes the necessary instructions for communication with the ordering server and the agent server.

Preferably, the captured contents are converted into a standardized data format prior to transferring to the agent server. Thereafter, the contents transferred to the agent server are arranged into a document object model on the agent server. The Document Object Model (DOM) is a cross-platform and language-independent convention for representing and interacting with objects in HTML, XHTML, and XML documents. The nodes of every document are organized in a tree structure, called the DOM tree. Objects in the DOM tree may be addressed and manipulated by using methods on the objects. The DOM is particularly well-suited for further processing in a standardized fashion on the agent server according to the invention.

According to another preferred embodiment of the invention, the digital object model is analyzed by a method of machine learning and/or artificial intelligence and/or by using a knowledge data base (‘shop knowledge’) for deriving the object information. Artificial intelligence may advantageously be used to imitate the human perception of the contents of the website actually presented to the user to extract the object information (e.g. product identification, quantity, individual configuration such as size, color etc.) of the object to be ordered. Alternatively or additionally, a knowledge database containing information on the format of object information display for each individual Web server may be used to enable identification of the object to be ordered.

Techniques commonly known as ‘web scraping’ (web harvesting or web data extraction) may be used according to the invention for capturing and processing the order related web contents. Web scraping techniques simulate human exploration of websites. Web scraping focuses on the transformation of unstructured data on the Internet, typically in HTML format, into structured data that can be stored and analyzed in a database. The application of web scraping is already known for the purpose of web automation, which simulates human browsing using computer software. Uses of conventional web scraping techniques include online price comparison, weather data monitoring, research, web data integration etc.

After identification of the object, preferably order data comprising the object information (e.g. a product to be purchased), client information (such as name and address of the user of the client intending to purchase the product) and ordering server information (e.g. identification of the online shop where the product is to be ordered) is placed into an order job queue. This queue may then be executed by at least one order bot program that executes orders according to the order job queue. Preferably, the orders are executed by a number of order bot programs in parallel. The order bot program controls the ordering server for executing each order via the web interface of the ordering server by imitating to human interaction, wherein, again, methods of artificial intelligence and/or a knowledge data base may be used.

The methods of artificial intelligence may include heuristic rules and/or supervised learning. For example, the order bot program (herein also briefly referred to as ‘bot’) can learn the product description for an online store by using heuristics which exploit the regularities typically present in online stores HTML pages. These heuristics strongly direct the learning process according to these regularities. These heuristics may assume, for example, that the product description comprises a digital image of the product, wherein the product identification (product name) can be found somewhere in the immediate proximity of the image. The heuristics may divide the HTML code of each page into logical portions representing groups of related information. Further, the heuristics may assume that every product is described in the same format. Product attributes are categories relevant for describing products. The product attributes will generally be product category-dependent (e.g., CDs or DVDs have other product attributes than shoes, computers, or TV sets). The heuristics for understanding the online shop web pages may recognize the typical terminology used in respective product categories. Rules may be used whose antecedents match typical words used to describe input fields on product-related query forms and whose consequents specify which product query attributes are filled in by the user or have to be filled in by the bot into the respective input fields. For example, such heuristics can recognize the words “product category” or “description” or “part number” as possibly identifying the product actually presented to the user. Words like “size”, “color”, “quantity”, “name”, “address”, “credit card number” possibly identify input fields for product attributes, shipping address, or payment details respectively.

BRIEF DESCRIPTION OF THE DRAWINGS

The enclosed drawings disclose preferred embodiments of the present invention. It should be understood, however, that the drawings are designed for the purpose of illustration only and not as a definition of the limits of the invention. In the drawings:

FIG. 1 shows a diagram illustrating the method steps of the invention;

FIG. 2 shows a server architecture on which the method of the invention may be executed.

DETAILED DESCRIPTION OF THE EMBODIMENTS

FIG. 1 illustrates the method of the invention. In the depicted embodiment, the method comprises the following steps:

The user goes to any website, selects a product including configurations and presses a button (browser plugin).

(1) The exact state of the website will be captured and relevant information will be filtered (Extraction):

All relevant information of any website will be extracted to get the exact state of the website at the moment the users clicks the button. Spider algorithms recognize which information needs to be extracted to have a relevant data set to perform the order for the user.

(2) The information will be classified into a data format and send to a server (Conversion):

The Exact state of the website will be converted into a data format (e.g. JSON) and transferred to servers.

(3) On the server the information will be classified and arranged in a virtual DOM (Arrangement):

This involves the duplication of the exact state of the website in an object-based virtual DOM (e.g. JSON DOM) on the server side. The Virtual DOM represents an object oriented tree structure of all elements of the real website the user sees. The virtual DOM is the basis to extract data from.

(4) Algorithms extract features of the virtual DOM to derive the exact order of a user (Analysis):

This involves the extraction of features/key information (e.g. product category, color, type of page, etc.) out of the Virtual DOM via proprietary algorithms.

Algorithms are aligned with a self-learning, proprietary dictionary.

Extraction requests are performed on a decentralized, scalable and service oriented server architecture.

(5) The order will be summarized (e.g. via a pop-up) and shown to the user (Representation):

The extracted features will be converted into a virtual representation (frontend). The user sees a pop-up of the product order.

(6) As soon as the order is recognized, the order will be placed into a job queue (Queuing):

Product orders will be put into a job queue organized by certain characteristics and can be flexibly approached via different bots.

(7) Bots will now execute the orders with an intelligent logic and imitate human activity (Action):

The bots receive information to take action. The bot follows a certain action plan based on the URL, e.g. ‘buy product’, ‘include user data’, ‘click selectables’. The action plan is aligned with an intelligent shopping map and the extracted features in step 4.

(8) As long as the order is not finally executed, step (1) to (7) with the exception of (5) will be repeated:

As long as the purchase of the customer is not finally executed the bots continue to work. Step 1 until 8 repeats (with exception of step 5 that only happens once to show the user the Pop-Up).

With reference to FIG. 2, the server infrastructure is based on a service oriented architecture. Every service registers itself to a central service discovery. Every service can then discover a service and connect to it in order to create remote procedure calls. Every new order also creates a new job that is stored inside the job queue. The bots are querying for new jobs and perform those if new ones exist. The extraction process is separated into multiple server instances to parallelize and speed up the data extraction. 

1. Method for enabling order handling via the Internet, wherein the method is performed in a computer system comprising at least a client, an ordering server and an agent server connected to the Internet, each of the client, the ordering server and the agent server comprising at least one processor and a memory storing one or more programs for execution by the at least one processor, the method comprising: capturing at least a part of the contents of a website retrieved by a web browser on the client from the ordering server; transferring the captured contents to the agent server; deriving object information from the captured contents on the agent server to identify an object to be ordered; controlling the ordering server by the agent server to order the object.
 2. Method of claim 1, wherein the ordering server is a vendor server running an online shop, wherein the object is a product or service to be purchased from the online shop.
 3. Method of claim 1, wherein the object information is communicated to the client where the object information is presented to a user of the client, and wherein the ordering of the product is performed after receiving an ordering approval from the client.
 4. Method of claim 1, wherein the capturing of the contents and the transferring to the ordering server is initiated by activating a plugin of the web browser on the client.
 5. Method of claim 1, wherein the captured contents are converted into a standardized data format prior to transferring to the agent server.
 6. Method of claim 1, wherein the contents transferred to the agent server are arranged into a document object model on the agent server.
 7. Method of claim 6, wherein the digital object model is analyzed by at least one of a method of artificial intelligence and by using a knowledge data base for deriving the object information.
 8. Method of claim 1, wherein order data comprising at least the object information, client information and ordering server information are placed into an order job queue.
 9. Method of claim 8, wherein at least one order bot program executes orders according to the order job queue.
 10. Method of claim 9, wherein the orders are executed by a number of order bot programs in parallel.
 11. Method of claim 9, wherein the at least one order bot program controls the ordering server for executing each order via the web interface of the ordering server by imitating human interaction.
 12. Method of claim 11, wherein methods or at least one of artificial intelligence and a knowledge data base is used for imitating the human interaction.
 13. Method of claim 12, wherein the methods of artificial intelligence include at least one of heuristic rules and supervised learning. 